home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / ODF-Interest Archive / June 96 / Re Extensions.2 < prev    next >
Encoding:
Internet Message Format  |  1996-12-03  |  1.6 KB  |  [TEXT/ttxt]

  1. Subject:     Re: Extensions
  2. Sent:        6/26/96 1:32 PM
  3. Received:    6/26/96 1:41 PM
  4. From:        Mark Lanett, mlanett@meer.net
  5. Reply-To:    ODF Interest, ODF-Interest@CILabs.ORG
  6. To:          OpenDoc Development Framework Discussion List, ODF-Interest@CILabs.
  7.  
  8. At 11:35 AM 6/26/96, The3Furies@aol.com wrote:
  9. >I have searched through both the ODFDraw & ODFCyberStarter projects and
  10. >am unable to find any evidence of extension subclasses (I assume I'm
  11. >not looking in the right places?)  I searched on the word extension
  12. >and nothing in the project matched - just stuff for the semantic
  13. >interface extension in the framework files.  I am essentially looking
  14. >for a spcecific example of how to implement what is discussed in the
  15. >Extensions Manager engineering note which tells what to do, but not
  16. >when or where.
  17.  
  18. The cyberdog extension is implemented in SLCyPart.{idl,cpp}; part of the
  19. ODFCyberLibrary project. It is registered in FW_MCyberPart::Initialize
  20. (FWCyPart.cpp), which should be called from YourPart::Initialize, and
  21. created in FW_MCyberPart::CreateCyberExtension.
  22.  
  23. Both the Cyberdog and scripting extensions are more generic than they need
  24. to be for a single part. In order for us to put them in shared library we
  25. couldn't call into C++ objects directly, so they use C callbacks. This
  26. would not be necessary for your own extension. Extensions are virtually
  27. identical in ODF and non-ODF parts; the only real difference would be how
  28. you catch exceptions. You should call IsValid in every method; the OpenDoc
  29. examples are not robust.
  30.  
  31.  
  32. --
  33. Mark Lanett <mlanett@meer.net>
  34. Have a bajillion brilliant Jobsian lithium licks
  35.  
  36.